package com.ly.emp.entity;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * 绩效考核部门
 *
 * @author luoyun
 * @Date: 2025-05-10
 */
@Data
@TableName("epm_base_suitunit_org")
@Schema(description = "绩效考核部门")
public class EpmBaseSuitunitOrg implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(type = IdType.ASSIGN_ID)
    @ExcelProperty("主键")
    @Schema(description = "主键")
    private java.lang.String id;
    /**
     * 部门编码
     */
    @ExcelProperty("部门编码")
    @Schema(description = "部门编码")
    private java.lang.String orgCode;
    /**
     * 部门名称
     */
    @ExcelProperty("部门名称")
    @Schema(description = "部门名称")
    private java.lang.String orgName;
    /**
     * 部门类型(1：职能部门  2：实施机构  3：处室  4：班组(41一级班组 42二级班组) 5：单位)
     */
    @ExcelProperty("部门类型(1：职能部门  2：实施机构  3：处室  4：班组(41一级班组 42二级班组) 5：单位)")
    @Schema(description = "部门类型(1：职能部门  2：实施机构  3：处室  4：班组(41一级班组 42二级班组) 5：单位)")
    private java.lang.String orgType;
    /**
     * 分析类型
     */
    @ExcelProperty("分析类型")
    @Schema(description = "分析类型")
    private java.lang.String analysisType;
    /**
     * 父部门编码
     */
    @ExcelProperty("父部门编码")
    @Schema(description = "父部门编码")
    private java.lang.String parentOrgCode;
    /**
     * 父部门名称
     */
    @ExcelProperty("父部门名称")
    @Schema(description = "父部门名称")
    private java.lang.String parentOrgName;
    /**
     * 责任部门编码
     */
    @ExcelProperty("责任部门编码")
    @Schema(description = "责任部门编码")
    private java.lang.String secorgCode;
    /**
     * 责任部门名称
     */
    @ExcelProperty("责任部门名称")
    @Schema(description = "责任部门名称")
    private java.lang.String secorgName;
    /**
     * 适用单位（epm_base_suitunit的orgcode）
     */
    @ExcelProperty("适用单位（epm_base_suitunit的orgcode）")
    @Schema(description = "适用单位（epm_base_suitunit的orgcode）")
    private java.lang.String suitUnit;
    /**
     * 负责人岗位编码
     */
    @ExcelProperty("负责人岗位编码")
    @Schema(description = "负责人岗位编码")
    private java.lang.String posCode;
    /**
     * 负责人岗位名称
     */
    @ExcelProperty("负责人岗位名称")
    @Schema(description = "负责人岗位名称")
    private java.lang.String posName;
    /**
     * 部门绩效兼职工号
     */
    @ExcelProperty("部门绩效兼职工号")
    @Schema(description = "部门绩效兼职工号")
    private java.lang.String pluraList;
    /**
     * 部门绩效兼职姓名
     */
    @ExcelProperty("部门绩效兼职姓名")
    @Schema(description = "部门绩效兼职姓名")
    private java.lang.String pluraNameList;
    /**
     * 部门负责人工号
     */
    @ExcelProperty("部门负责人工号")
    @Schema(description = "部门负责人工号")
    private java.lang.String psnNum;
    /**
     * 部门负责人名称
     */
    @ExcelProperty("部门负责人名称")
    @Schema(description = "部门负责人名称")
    private java.lang.String psnName;
    /**
     * 是否考核
     */
    @ExcelProperty("是否考核")
    @Schema(description = "是否考核")
    private java.lang.String isAssess;
    /**
     * 显示排序
     */
    @ExcelProperty("显示排序")
    @Schema(description = "显示排序")
    private java.math.BigDecimal displayOrder;
    /**
     * 创建人
     */
    @ExcelProperty("创建人")
    @Schema(description = "创建人")
    private java.lang.String sysCreatorId;
    /**
     * 创建日期
     */
    @ExcelProperty("创建日期")
    @Schema(description = "创建日期")
    private java.util.Date sysCreateDate;
    /**
     * 修改人
     */
    @ExcelProperty("修改人")
    @Schema(description = "修改人")
    private java.lang.String sysUpdatorId;
    /**
     * 修改日期
     */
    @ExcelProperty("修改日期")
    @Schema(description = "修改日期")
    private java.util.Date sysUpdateDate;
    /**
     * 归属部门标识
     */
    @ExcelProperty("归属部门标识")
    @Schema(description = "归属部门标识")
    private java.lang.String sysDeptId;
    /**
     * 归属单位标识
     */
    @ExcelProperty("归属单位标识")
    @Schema(description = "归属单位标识")
    private java.lang.String sysCompanyId;
    /**
     * 分管领导工号
     */
    @ExcelProperty("分管领导工号")
    @Schema(description = "分管领导工号")
    private java.lang.String epmPerson1;
    /**
     * 分管领导姓名
     */
    @ExcelProperty("分管领导姓名")
    @Schema(description = "分管领导姓名")
    private java.lang.String epmPerson1Name;
    /**
     * 主要领导工号
     */
    @ExcelProperty("主要领导工号")
    @Schema(description = "主要领导工号")
    private java.lang.String epmPerson2;
    /**
     * 主要领导姓名
     */
    @ExcelProperty("主要领导姓名")
    @Schema(description = "主要领导姓名")
    private java.lang.String epmPerson2Name;
    /**
     * 其它分管领导工号
     */
    @ExcelProperty("其它分管领导工号")
    @Schema(description = "其它分管领导工号")
    private java.lang.String epmPerson3;
    /**
     * 其它分管领导姓名
     */
    @ExcelProperty("其它分管领导姓名")
    @Schema(description = "其它分管领导姓名")
    private java.lang.String epmPerson3Name;
    /**
     * epmPerson1OrgCode
     */
    @ExcelProperty("epmPerson1OrgCode")
    @Schema(description = "epmPerson1OrgCode")
    private java.lang.String epmPerson1OrgCode;
    /**
     * epmPerson1OrgName
     */
    @ExcelProperty("epmPerson1OrgName")
    @Schema(description = "epmPerson1OrgName")
    private java.lang.String epmPerson1OrgName;
    /**
     * epmPerson1PosCode
     */
    @ExcelProperty("epmPerson1PosCode")
    @Schema(description = "epmPerson1PosCode")
    private java.lang.String epmPerson1PosCode;
    /**
     * epmPerson1PosName
     */
    @ExcelProperty("epmPerson1PosName")
    @Schema(description = "epmPerson1PosName")
    private java.lang.String epmPerson1PosName;
    /**
     * 一级绩效经理绩效兼职
     */
    @ExcelProperty("一级绩效经理绩效兼职")
    @Schema(description = "一级绩效经理绩效兼职")
    private java.lang.String pluraListEpm;
    /**
     * epmPerson2OrgCode
     */
    @ExcelProperty("epmPerson2OrgCode")
    @Schema(description = "epmPerson2OrgCode")
    private java.lang.String epmPerson2OrgCode;
    /**
     * epmPerson2OrgName
     */
    @ExcelProperty("epmPerson2OrgName")
    @Schema(description = "epmPerson2OrgName")
    private java.lang.String epmPerson2OrgName;
    /**
     * epmPerson2PosCode
     */
    @ExcelProperty("epmPerson2PosCode")
    @Schema(description = "epmPerson2PosCode")
    private java.lang.String epmPerson2PosCode;
    /**
     * epmPerson2PosName
     */
    @ExcelProperty("epmPerson2PosName")
    @Schema(description = "epmPerson2PosName")
    private java.lang.String epmPerson2PosName;
    /**
     * 是否专业部门
     */
    @ExcelProperty("是否专业部门")
    @Schema(description = "是否专业部门")
    private java.lang.String isProorg;
    /**
     * path
     */
    @ExcelProperty("path")
    @Schema(description = "path")
    private java.lang.String path;
    /**
     * 是否集约化处理
     */
    @ExcelProperty("是否集约化处理")
    @Schema(description = "是否集约化处理")
    private java.lang.String isIntensification;
    /**
     * 是否集约化状态
     */
    @ExcelProperty("是否集约化状态")
    @Schema(description = "是否集约化状态")
    private java.lang.String isIntensificationFlag;
    /**
     * 集约化列表
     */
    @ExcelProperty("集约化列表")
    @Schema(description = "集约化列表")
    private java.lang.String isIntensificationList;

    /**
     * 部门列表
     */
    @TableField(exist = false)
    private List<String> orgList;

    /**
     * 分析部门列表
     */
    @TableField(exist = false)
    private List<String> analysisTypeList;
}
